document.addEventListener('DOMContentLoaded', function() {
    // 获取表单元素
    const forgotPasswordForm = document.getElementById('forgot-password-form');
    const userIdentifier = document.getElementById('user-identifier');
    const userIdentifierError = document.getElementById('user-identifier-error');
    const resetLinkContainer = document.getElementById('reset-link-container');
    const resetLink = document.getElementById('reset-link');
    const copyLinkBtn = document.getElementById('copy-link');
    
    // 从本地存储获取用户数据
    let users = JSON.parse(localStorage.getItem('registeredUsers')) || [];
    
    // 清除错误提示
    function clearErrors() {
        userIdentifierError.textContent = '';
        userIdentifier.classList.remove('border-red-500');
        userIdentifier.classList.add('border-gray-300');
    }
    
    // 显示错误信息
    function showError(message) {
        userIdentifierError.textContent = message;
        userIdentifier.classList.remove('border-gray-300');
        userIdentifier.classList.add('border-red-500');
    }
    
    // 生成重置链接
    function generateResetLink(email) {
        // 创建包含邮箱和时间戳的令牌
        const timestamp = new Date().getTime();
        const token = btoa(`${email}-${timestamp}`); // 简单编码，实际应用中应使用更安全的加密方式
        return `${window.location.origin}/reset-password.html?token=${token}`;
    }
    
    // 复制链接到剪贴板
    copyLinkBtn.addEventListener('click', function() {
        resetLink.select();
        document.execCommand('copy');
        
        // 显示复制成功提示
        const originalText = copyLinkBtn.innerHTML;
        copyLinkBtn.innerHTML = '<i class="fa fa-check mr-1"></i>已复制';
        setTimeout(() => {
            copyLinkBtn.innerHTML = originalText;
        }, 2000);
    });
    
    // 表单提交处理
    forgotPasswordForm.addEventListener('submit', function(e) {
        e.preventDefault();
        clearErrors();
        
        const identifier = userIdentifier.value.trim();
        let foundUser = null;
        
        // 查找用户（通过邮箱或用户名）
        if (identifier.includes('@')) {
            // 假设包含@符号的是邮箱
            foundUser = users.find(user => user.email === identifier);
        } else {
            // 否则按用户名查找
            foundUser = users.find(user => user.name === identifier);
        }
        
        if (!foundUser) {
            showError('未找到与该邮箱或用户名关联的账户');
            return;
        }
        
        // 生成并显示重置链接
        const resetUrl = generateResetLink(foundUser.email);
        resetLink.value = resetUrl;
        resetLinkContainer.classList.remove('hidden');
        
        // 模拟发送重置邮件
        console.log(`发送密码重置链接到: ${foundUser.email}`);
        console.log(`重置链接: ${resetUrl}`);
        
        // 显示成功消息
        alert('密码重置链接已生成并发送到您的邮箱，请查收');
    });
});
